package gui;

import gui.beans.TaskTree;
import gui.eventos.TaskActionListener;

import java.awt.BorderLayout;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JPanel;
import javax.swing.JScrollPane;

import datos.Tarea;

@SuppressWarnings("serial")
public class PanelListaIncidencias extends JPanel {

	private JScrollPane jListaScroll = null;
	private TaskTree lista = null;

	public PanelListaIncidencias() {
		super();
		setLayout(new BorderLayout());
		add(getJListaScroll(), BorderLayout.CENTER);
	}

	public Tarea cargarLista(List<Tarea> lista) {
		return getLista().cargarLista(lista);
	}

	public void actualizaUI() {
		getLista().updateUI();
	}

	/**
	 * This method initializes jListaScroll
	 * 
	 * @return javax.swing.JScrollPane
	 */
	private JScrollPane getJListaScroll() {
		if (jListaScroll == null) {
			jListaScroll = new JScrollPane();
			jListaScroll.setViewportView(getLista());
		}
		return jListaScroll;
	}

	/**
	 * This method initializes jLista
	 * 
	 * @return javax.swing.JList
	 */
	public TaskTree getLista() {
		if (lista == null) {
			lista = new TaskTree(new ArrayList<Tarea>());
		}
		return lista;
	}

	public void addIncidenciaActionListener(TaskActionListener l){
		getLista().addIncidenciaActionListener(l);
	}
}
